This invention relates to game playing services for gaming machines such as slot machines and video poker machines. More particularly, the present invention relates to methods of data management and configuration management for game services provided to gaming machines distributed across a gaming entity.
There are a wide variety of associated devices that can be connected to a gaming machine such as a slot machine or video poker machine. Some examples of these devices are lights, ticket printers, card readers, speakers, bill validators, ticket readers, coin acceptors, display panels, key pads, coin hoppers and button pads. Many of these devices are built into the gaming machine or components associated with the gaming machine such as a top box which usually sits on top of the gaming machine.
Typically, utilizing a master gaming controller, the gaming machine controls various combinations of devices that allow a player to play a game on the gaming machine and also encourage game play on the gaming machine. For example, a game played on a gaming machine usually requires a player to input money or indicia of credit into the gaming machine, indicate a wager amount, and initiate a game play. These steps require the gaming machine to control input devices, such as bill validators and coin acceptors, to accept money into the gaming machine and recognize user inputs from devices, including key pads and button pads, to determine the wager amount and initiate game play. After game play has been initiated, the gaming machine determines a game outcome, presents the game outcome to the player and may dispense an award of some type depending on the outcome of the game.
The operations described above may be carried out on the gaming machine when the gaming machine is operating as a xe2x80x9cstand alonexe2x80x9d unit or linked in a network of some type to a group of gaming machines. As technology in the gaming industry progresses, more and more gaming services are being provided to gaming machines via communication networks that link groups of gaming machines to a remote computer that provides one or more gaming services. As an example, gaming services that may be provided by a remote computer to a gaming machine via a communication network of some type include player tracking, accounting, cashless award ticketing, lottery, progressive games and bonus games. In addition, gaming machines are evolving into gaming platforms where the gaming services and game play options provided on the gaming machines may be dynamically configured. Thus, the number and type of game services and game play options offered on a particular gaming machine may vary regularly with time.
Within the gaming industry, a particular gaming entity may desire to provide network gaming services and track the performance of all the gaming machines under the control of the entity. The gaming machines under the control of a particular entity may be globally distributed in many different types of establishments. Casinos, convenience stores, supermarkets, bars and boats are a few examples of establishments where gaming machines may be placed. Further, gaming entities are becoming increasingly interdependent. For instance, promotions may be provided that span multiple gaming entities. As another example, mechanisms such as cashless systems are being provided that allow game players to seamlessly engage in game play across multiple gaming entities.
FIG. 1 is a block diagram depicting gaming machines distributed in different establishments partially connected by a dedicated communication network for a typical gaming entities currently operating in the gaming industry. In FIG. 1, a first gaming entity 101 utilizes a central office 142. Gaming machines, 102, 104, 106, 136 and 138 operated by the gaming entity 101 are located in casino 110 and a store 140. The store 140 may be part of route comprising gaming machines distributed in such venue sites as stores, bars and other retail establishments. The gaming machines, 114, 116 and 118 for the gaming entity 150 are located in casinos 122. A gaming entity may operate hundreds, thousands or ten of thousands of gaming machines. Since gaming is allowed in many locations throughout the world, the two casinos, 110 and 122, the central office 142 and the store may be distributed over a wide geographic area. For instance, the casino 110 may be located in Atlantic City, New Jersey, the casino 122 may be located in Australia, the central office may be located in Las Vegas, Nev. and the store may be located in Reno, Nev.
Within the casinos, the gaming machines may be connected to one or more servers via one or more dedicated networks. The servers are usually located in a backroom of the casino away from the casino floor. For instance, in casino 110, gaming machines 102, 104 and 106 are connected to a server 100 via a dedicated network 108. The dedicated network 108 may be used to send accounting information and player tracking information from the gaming machines to the server 110. In casino 122, the gaming machines 114, 116, 118 may send accounting information and player tracking information to a server 112 using the dedicated network 120. Other dedicated networks (not shown) in casinos, 110 and 112, may provide such network gaming services as bonus game play, progressive game play and cashless ticketing.
In casinos 110 and 122, the servers 100 and 112 may store and process accounting data from the gaming machines in communication with the servers. For instance, an accounting report detailing the performance of individual and groups of gaming machines may be generated from the data stored on the servers 100 and 112. In addition, accounting data or reports may be sent to the server 124 in the central office 142 from each casino. These reports may contain game performance data collected from a number of gaming machines supporting many different types of games as well as hotel operations data. The data from the casino 110 may be sent to the central office 142 using a dedicated leased line 132 using a frame relay or ATM network. The data from the casino 122 may be sent to a central office (not shown) using the communication link 133.
In some cases, the gaming entities, 101 and 150, may exchange information in some manner. For instance, a player may be issued a cashless instrument at casino 122, such as an award ticket valid for game play, the player may then utilize the award ticket at casino 110. In this example, gaming entity 150 may transfer resources to gaming entity 101, in some manner, to cover a value of the cashless instrument used by the player.
The server 124 may be used to generate reports summarizing the performance of all the gaming machines within the gaming entity (e.g. casino 110, casino 122 and store 140). The reports may be accessed locally using the local access points 126 and 128 via the local network. In addition, reports may be remotely accessed using a dial in number for a limited number of users. For instance, an executive travelling on the road might view gaming machine performance data from the remote access point 134 where the remote access point 134 may be a hotel room.
For the store 140, the gaming machines, 136 and 138 may be leased by the store operator. However, the cost of a dedicated communication network for a small number of gaming machines is usually not justified. Thus, the gaming machines operate in a xe2x80x9cstand alonexe2x80x9d mode. While operating in xe2x80x9cstand alonexe2x80x9d mode, network gaming services are not available to these gaming machines. To obtain performance data for the gaming machines, 136 and 138, a route operator may regularly extract performance data from the machines and manually transmit the information to the central office 142. A route may consist of a number gaming machines located in various locations such as bars, convenience stores and supermarkets. Usually, the route operator manually extracts performance data for all of the gaming machines located on their route. For a large route, this process may be both time consuming and costly.
Within the gaming industry, there is some desire to provide centralized network gaming services, centralized data access, centralized data analysis, centralized configuration management and centralized data acquisition to all of the gaming machines or a larger proportion of gaming machines within a gaming entity. The centralization may be provided at both the casino level and the corporate level as a means of lowering information management costs and optimizing gaming performance. A current barrier to providing the centralized services, described above, is the complexity and costs of obtaining and managing large amounts of information from a large variety of gaming machines some of which may be dynamically configurable. Further, within the gaming industry, game performance information has traditionally been closely guarded and has not been widely shared even within a gaming entity. Thus, mechanisms for data sharing on a large scale have not been generally implemented in the gaming industry. In addition, once the data is obtained, another barrier is analyzing the information and applying it in a manner which is both useful and convenient to users within the gaming entity. In view of the above, it would be desirable to provide hardware and methods for data sharing, data analysis and configuration management for gaming machines that reduce the complexity of the information management environment. Also, it is desirable for the hardware and methods to be scaleable to a large number of gaming machines and machine operators where the gaming machines and machine operators are widely distributed within a gaming entity.
This invention addresses the needs indicated above by providing a gaming terminal data repository that may be used to store game software components, game software component information and gaming transaction information for a plurality of gaming terminals owned by a plurality of gaming entities. The repository may store the game software component information and the gaming transaction information in a database partitioned according to the different gaming entities in a manner allowing a game software component configuration of a particular gaming machine to be easily analyzed and modified. Using various update triggers, game software components for gaming machines connected to the gaming terminal data repository may be automatically updated. The gaming terminals, configured or designed to receive game software components from the repository, may present game play using a combination of game software components residing on the gaming machine and the game software components received from the repository.
One aspect of the present invention provides a gaming terminal data repository. The data repository may be generally characterized as including: 1) a network interface for communicating with one or more gaming terminals, 2) a memory arranged to store gaming terminal transaction information and game software components for a plurality of gaming terminals and 3) a processor designed or configured to update game software components on the gaming terminals using one or more update triggers where a plurality of the game software components are used to present a game on each gaming terminal. The game software components may be selected from the group consisting of game system components, game paytables, game bonusing, game progressives, game graphics, game sounds, game jurisdiction information and game networking components. The processor may be designed or configured to execute one or more gaming repository applications such as a data analysis application, a configuration design application, a scheduling design application, report generation application, a query configuration application and a game software version management application.
In particular embodiments, the repository may include a firewall. The memory may be a hard drive or a CD-RW drive. The network interface may be a wireless network interface or a wired network interface where the network interface communicates with a remote gaming device. The remote gaming device may be selected from the group consisting of a printer, a portable computer, a personal digital assistant and a computer.
In other embodiments, the game presented on the gaming terminals may be a video bingo game, a video lottery game, a video black jack game, a video slot game, a mechanical slot game, a video poker game, a video keno game, a video pachinko game, a video card game and a video game of chance. The game transaction information may be stored according to one or more game data categories such as game version data, game data, gaming terminal data, player data, route data and venue data. Further, the gaming transaction information and game software component information may be stored in queryable and partitioned database.
In yet other embodiments, the gaming terminals and game software components may be owned by a plurality of gaming entities where the gaming transaction information and game software components owned by each gaming entity are stored in a separate gaming data partition in the memory. Further, gaming transaction information and game software components owned by a first gaming entity are not accessible to a second gaming entity. Access to gaming transaction information and game software components may be limited according to one or more hierarchical access privileges where the hierarchical access privileges are selected from the group consisting of site user, corporate site user, remote corporate user, venue site user, remote venue site user, route user and route site user.
Another aspect of the present invention provides a gaming machine. The gaming machine may be generally characterized as including: 1) a first combination of game software components, the first combination comprising a plurality of game software components; 2) a master gaming controller designed or configured to present a game on the gaming machine using the first combination of game software components; 3) a network interface for communicating with a remote server and receiving game software components from the remote server; and 4) processor logic for combining game software components from the first combination with game software components received from the remote server to generate a second combination of game software components where the second combination is used to present a game on the gaming machine. In addition, the gaming machine may include a memory storing a plurality of game software components where at least one of the plurality of game software components stored in the memory may be used to generate the second combination game software components. The memory may also contain game software version information for a plurality of game software components. The game software components may selected from the group consisting of game system components, game paytables, game bonusing, game progressives, game graphics, game sounds, game jurisdiction information, game networking components.
In particular embodiments, the remote server may be a gaming terminal data repository and the gaming machine may include a firewall and a modem. The network interface may be a wireless network interface or a wired network interface where the network interface is configured to allow connection of the gaming machine to an internet network or an intranet network. The intranet network may be selected from the group consisting of a cashless system network, a progressive game network, an accounting network and a bonus game network. The game presented on the gaming machine may be a video bingo game, a video lottery game, a video black jack game, a video slot game, a mechanical slot game, a video poker game, a video keno game, a video pachinko game, a video game of chance and a video card game.
Another aspect of the present invention provides, in a remote server, a method of modifying game play on a plurality of gaming machines. The method may be characterized as including: 1) determining that a configuration update has been triggered; 2) establishing communications with the gaming machine; 3) identifying one or more game software components for the configuration update on the gaming machine; 4) bundling the game software components; and 5) sending the game software components to the gaming machine where the game software components are used to present a game on the gaming machine.
In particular embodiments, the method may also include one or more of the following: a) prior to sending the game software components, contacting a local ISP and sending the game software components via the local ISP, b) looking up an IP address of the one or more gaming machines, c) encapsulating the game software components in multiple information packets, d) encrypting the game software components, e) generating instructions for configuring the game software components and sending the instructions with the game software components; f) requesting game software component version information from the gaming machines; g) receiving game software component version information from the gaming machine; h) receiving game transaction information from the gaming machines and storing the game transaction information according to one or more game data categories where the game data categories are selected from the group consisting of game version data, game data, gaming terminal data, player data, route data and venue data; i) prior to storing said game transaction information, determining access privileges for said game transaction information; j) prior to storing said game transaction information, performing one or more operations on said game transaction information, k) determining a data storage partition from among a plurality of data storage partitions for storing said game transaction information where the plurality of data storage partitions correspond to a plurality of gaming entities, l) checking a list of update triggers where the update triggers are selected from the group consisting of an update time, an update day, an update week, a game event, a game performance event and a player input.
Another aspect of the present invention provides a method for accessing game transaction information on a remote server which stores gaming transaction information for multiple different gaming entities. The method may be characterized as including: 1) receiving a request message for game transaction information from a first gaming device; 2) verifying an identity of a game transaction information requester contained in the request message; 3) determining access privileges of the game transaction information requester; 4) when said access privileges are satisfied, generating the requested game transaction information; and 5) sending the requested game transaction information specific to the gaming entity of the requester in a reply message to a second gaming device. The first gaming device may be selected from the group consisting of a gaming machine and a remote computer and the second gaming device may be selected from the group consisting of a gaming machine, a printer and a remote computer.
In particular embodiments, the method may include one or more of the following: a) generating the reply message, b) storing one or more game transaction information request parameters where the request parameters include one or more of the following: a time, a gaming terminal, a date, a game version, a game, a player, a route and a venue, c) searching a queryable database for the requested game transaction information, d) denying access to the requested game transaction information when the access privileges are not satisfied, and e) encrypting said requested game transaction information.
Another aspect of the present invention provides a method of updating game software. The method may be generally characterized as including: 1) establishing communications with a remote server; 2) receiving one or more game software components from the remote server; 3) unbundling said one or more game software components; 4) generating a combination of game software components where the combination of game software components comprise a plurality of game software components and includes the one or more game software components received from the remote server; and 5) presenting a game play using the combination of game software components where the game play is a video bingo game play, a video lottery game play, a video black jack game play, a video slot game play, a mechanical slot game play, a video poker game play, a video keno game play, a video pachinko game play, a video game play of chance and a video card game play.
These and other features of the present invention will be presented in more detail in the following detailed description of the invention and the associated figures.